# vim: filetype=sh
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#


# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
# Use is subject to license terms.

. $STF_SUITE/tests/cli_root/cli.cfg
. $STF_SUITE/include/libtest.kshlib

set_disks

export FS_SIZE=2gb
export FILE_SIZE=64m
export PART_SIZE=128m
export MAX_NUM=5
export GROUP_NUM=3
export DEVICE_DIR=$(pwd)/dev
export BACKUP_DEVICE_DIR=$(pwd)/bakdev
export DEVICE_FILE=disk
export DEVICE_ARCHIVE=$(pwd)/archive${TESTCASE_ID}.tar
# MYTESTFILE can be any file that exists and we have r access to
export MYTESTFILE=$STF_SUITE/include/default.cfg

# NB: It's easier just to repeat the expansion patterns than to reuse.
for (( num=0 ; $num < $GROUP_NUM ; num += 1 )); do
	eval export VDEV\${num}F="${DEVICE_FILE}${num}"
	eval export VDEV\${num}="${DEVICE_DIR}/${DEVICE_FILE}${num}"
	DEVICE_FILES="$DEVICE_FILES ${DEVICE_DIR}/${DEVICE_FILE}${num}"
done
export DEVICE_FILES
for (( num = GROUP_NUM ; $num < $MAX_NUM ; num += 1 )); do
	eval export VDEV\${num}F="${DEVICE_FILE}${num}"
	eval export VDEV\${num}="${DEVICE_DIR}/${DEVICE_FILE}${num}"
done

export ALTER_ROOT=/alter${TESTCASE_ID}
export STF_TIMEOUT=2400

export ZPOOL_VERSION=$(get_zpool_version)

# Version 1 pools
export ZPOOL_VERSION_1_FILES="zfs-pool-v1.dat"
export ZPOOL_VERSION_1_NAME="v1-pool"

# Version 2 pools
export ZPOOL_VERSION_2_FILES="zfs-pool-v2.dat"
export ZPOOL_VERSION_2_NAME="v2-pool"

# This is a v3 pool
export ZPOOL_VERSION_3_FILES="zfs-pool-v3.dat"
export ZPOOL_VERSION_3_NAME="v3-pool"

# This is a v6 pool
export ZPOOL_VERSION_6_FILES="zfs-pool-v6.dat"
export ZPOOL_VERSION_6_NAME="v6-pool"

# This is a v7 pool
export ZPOOL_VERSION_7_FILES="zfs-pool-v7.dat"
export ZPOOL_VERSION_7_NAME="v7-pool"

# This is a v8 pool
export ZPOOL_VERSION_8_FILES="zfs-pool-v8.dat"
export ZPOOL_VERSION_8_NAME="v8-pool"

# This statement builds up a list of configurations we should be able to
# upgrade, for each pool version. Once we've built this variable, we'll
# call the functions above for each value.
case $ZPOOL_VERSION in
6)
	CONFIGS="6"
	;;
7)
	CONFIGS="6 7"
	;;
8)
	CONFIGS="6 7 8"
	;;
*)
	# we should be able to upgrade pools of version 1, 2 & 3
	# but we should also log a note about the unknown pool version
	CONFIGS="6 7 8"
	;;
esac
export CONFIGS
